/*
 * File:   TessMetaInfoTest.h
 * Author: Guilherme Monteiro
 *
 */

#ifndef TESSMETAINFOTEST_H
#define	TESSMETAINFOTEST_H

#include <cppunit/extensions/HelperMacros.h>

#include "../headers/TessMetaInfo.h"

using namespace std;

class TessMetaInfoTest : public CPPUNIT_NS::TestFixture {
    CPPUNIT_TEST_SUITE(TessMetaInfoTest);

    CPPUNIT_TEST(testTessMetaInfo1);
    CPPUNIT_TEST(testTessMetaInfo2);
    CPPUNIT_TEST(testGetTIFFImagePath);
    CPPUNIT_TEST(testGetTranscriptionPath);
    CPPUNIT_TEST(testGetUserAnswerPath);
    CPPUNIT_TEST(testGetHighResolutionImagePath);
    CPPUNIT_TEST(testGetLowResolutionImagePath);
    CPPUNIT_TEST(testGetHighResolutionTablePath);
    CPPUNIT_TEST(testGetLowResolutionTablePath);
    CPPUNIT_TEST(testGetOutputTextsFileName);
    CPPUNIT_TEST(testGetOutputTaxesFileName);
    
    CPPUNIT_TEST_SUITE_END();

public:
    TessMetaInfoTest();
    virtual ~TessMetaInfoTest();
    void setUp();
    void tearDown();

private:
    string path;
    
    string dotdot;
    string bar;
    
    string books;
    string bookName;
    string pageName;
    string pageName2;
    string tabelasAlta;
    string tabelasBaixa;
    string baixaResolucao;
    string altaResolucao;
    string metadados;
    string transcriptions;
    string userAnswer;
    string texts;
    string taxes;
    
    TessMetaInfo* tessMetaInfo;
    
    void testTessMetaInfo1();
    void testTessMetaInfo2();
    void testGetTIFFImagePath();
    void testGetTranscriptionPath();
    void testGetUserAnswerPath();
    void testGetHighResolutionImagePath();
    void testGetLowResolutionImagePath();
    void testGetHighResolutionTablePath();
    void testGetLowResolutionTablePath();
    void testGetOutputFileName();
    void testGetOutputTextsFileName();
    void testGetOutputTaxesFileName();
};

#endif	/* TESSMETAINFOTEST_H */


